﻿using Camc.Quality.QualityAnalysis.RFormBase;
using Camc.Quality.QualityAnalysis.RFormClass;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Camc.Quality.QualityAnalysis.RFormEntity
{
    public class R进箱舱登记表 : RTableBase
    {
        public R进箱舱登记表(int serialNum, Guid rWorkStepEntityId, Guid rProcessesEntityId, int sort, string model, string fisrtDrawingNum, string firstDrawingName, string recordRemark)
        {
            SerialNum = serialNum;
            Sort = sort;
            RWorkStepEntityId = rWorkStepEntityId;
            RProcessesEntityId = rProcessesEntityId;

            Model = model;
            FisrtDrawingNum = fisrtDrawingNum;
            FirstDrawingName = firstDrawingName;
            RecordRemark = recordRemark;
        }
        public override string FormName { get; protected set; } = "进箱舱登记表";

        public override string Model_DisplayName { get; protected set; } = "型号";

        public override string FisrtDrawingNum_DisplayName { get; protected set; } = "图号";

        public override string FirstDrawingName_DisplayName { get; protected set; } = "名称";

        /// <summary>
        /// 记录要素
        /// </summary>
        /// <param name="recordStatus"></param>
        /// <param name="remark"></param>
        /// <param name="recordRequire"></param>
        /// <param name="recordMainopoint"></param>
        public RRecordRequirementsEntity SetRecordRequirements(RRecordRequirementsEntity entity, string recordStatus, string remark, string recordRequire, string recordMainopoint)
        {
            entity.SetRecordStatus(recordStatus, "工作事项");
            entity.SetRecordRequire(recordRequire, "进箱携带物品");
            entity.SetRecordMainopoint(recordMainopoint, "携带物品数量");
            entity.SetRemarks(remark, "进箱时间");
            return entity;
        }
        /// <summary>
        /// 出箱确认
        /// </summary>
        /// <param name="confirmResult"></param>
        public RMeasuredResultEntity SetMeasuredResult(RMeasuredResultEntity entity, string confirmResult)
        {
            entity.SetConfirmResult(confirmResult, "出箱确认");
            return entity;
        }
        /// <summary>
        /// 互检
        /// </summary>
        public RInspectionSignatureEntity SetInspectionSignature(RInspectionSignatureEntity entity, string firstOperator, DateTime? firstOperatorTime, string secondOperator, DateTime? secondOperatorTime)
        {
            entity.InspectionSignatureName = "互检";
            entity.SetFirstOperator(firstOperator, "操作者", firstOperatorTime, "操作者操作时间");
            entity.SetSecondOperator(secondOperator, "互检者", secondOperatorTime, "互检者操作时间");
            return entity;
        }
    }
}
